deadlock prevention java